Data Scientist
Project Category
ZeitZuHelfen is a help request platform that bridges the gap between seniors needing assistance and students willing to help. An AI voice-first interface that allows seniors to request help by simply speaking, no typing, no forms, just conversation. For students, a way to engage with the Munich community while earning some rewards.
Selecting the correct LLM for speech-to-text and data processing. Synchronizing Telegram webhooks, ngrok tunnels, and FastAPI endpoints was tricky. Ensuring a smooth user experience for seniors using voice commands required careful design and testing.
Voice-First Pipeline: Built a Telegram-based voice system
where seniors send audio requests; FFmpeg handles audio
conversion and Google Gemini extracts structured data and
detects emergencies.
Backend Architecture: Developed a FastAPI backend using
async SQLAlchemy, Pydantic validation, and environment-based
configuration; runs alongside a Telegram bot server sharing a
SQLite database.
Request & User Management: Created endpoints for
registration, authentication, and request status transitions for
seniors and students.
Student Interface: Exposed REST APIs enabling students to
browse, accept, and complete help requests through a lightweight
web interface.
Building a voice-first system highlighted the complexity of
handling real-world speech, incomplete information, and diverse
speaking styles. Designing a reliable confirmation flow and
managing multi-step conversations without confusion were key
challenges. Integrating multiple external services—Telegram,
FFmpeg, Google Gemini, and address validation—required careful
error handling and async coordination.
Next time, I would add dedicated session management earlier (e.g.,
Redis) to improve scalability and support multiple simultaneous
senior conversations. I also learned the importance of designing
prompts and user flows that remain simple, especially for
non-technical users.